package com.tedu.day02.oop;

/**
 * final关键字--最终
 *    作用：修饰类，属性（普通属性/成员变量），方法，不能修饰构造器
 *    1.final修饰的类---不可被继承，但能正常创建对象
 *    语法：修饰符 final（叫辅助修饰符）  class  类名{}
 *    典型final类：String字符串
 *    2.final修饰方法：不可以重写，但是可以重载【锁死】
 *    【锁死】:一般用final修饰方法目的：锁住方法，防止继承它的类的修改（覆盖）它
 *
 *    语法： 修饰符 final 返回值 方法名(){}
 */
  class People{
      public final void test(){    //方法：final  重写失败  锁死【不能被重写】
          System.out.println("父类---重写");
      }
}
  class Man extends  People{
   //   public void test() {
   //       System.out.println("子类---重写");
   //   }
          public void test(int i,int j){  //重载：不受final方法控制
              System.out.println("子类---重写");
          }
      }
 class Woman extends Man{  //锁死方法，防止多层继承：重写方法
    /*  public void test(){
          System.out.println();
      }*/
 }





public class Final关键字 {
    public static void main(String[] args) {
        Man man=new Man();
        man.test();  //final修饰方法【来自父类】
        man.test(1,1);  //重载【拓展：不改变原来的方法】
    }
}




//final class Eunuch{}
//class People extends Eunuch{}